package com.xw.bo.ks.client;

import lombok.Data;
import lombok.extern.slf4j.Slf4j;


@Slf4j
@Data
public class KsHttp {

//    private HttpClient httpClient;
//
//    private String url = "https://openapi.kwaixiaodian.com";
//
//    private String appKey = "ks701717119507549657";
//
//    private String appSecret = "vRnCQDYXssdcZeESxD6Vsw";
//
//    private String signSecret = "8c77b5b90ccd4405728fac5482465ddd";
//
//    private String refreshToken = "ChJvYXV0aC5yZWZyZXNoVG9rZW4SsAHS1sLVvyzhgBnQc1yskAOqYndoCDfSnaUMXHuKF8rB-c-RlKSM6fveu2C0e_vmQL2TR53wy2MtYpz037waAdO8VteVkgB_gHxaHaQTz_2rOMdf6ZI6VT1QbXbzHLgttymXP112ALNOpWWc4U6oDCgw73RCb9GghYsYVzbqLazb2XqGBpXbfyeSwA_EbqZAovBsDVm0lXQ6xoJLiteWZNw3CrwDT9vU_XL1BjyAfR2MMRoStyCQ508WLUUT5y--E2N5syNCIiBHw91tbSKlLpPxLUmfFp-4yOKhpUQWQPAiPPSRrygkzigFMAE";
//
//    /**
//     * 该token没有更新能力，若无必须不要调用，尽量使用 KuaiShouTokenService.getAccessToken 或者其他可以刷新token的方法
//     */
//    private String accessToken = "ChFvYXV0aC5hY2Nlc3NUb2tlbhJgjMoOtd-T8fjSm5CXZzuvJAO0yDqqUC1ABbyA_AMuopYoPGywTToIHWV6-ncnB8hclyDw4SuwIycaPIV0xUFdydnZwHi1wTttAyLCm4gnK8V5i_R5ONGnXCHlWDbrfYqHGhLd637ev4BKL7l6Qm3dUiG-wociIMgxpWri0TZhkzs2auTrfQsqm7gERD5NP_KOT3BrIZAMKAUwAQ";
//
//    /**
//     * 快手基础的请求类
//     * @param urlPath 请求接口
//     * @param paramMap 请求参数
//     * @param requestMethod 请求方式
//     * @return 请求结果
//     */
//    public KsHttpResponseDTO dealOpenOrderCursorListResponse(String urlPath, Map<String, String> paramMap, String requestMethod) {
//
//        KsHttpResponseDTO dto = null;
//        try {
//            if ("POST".equals(requestMethod)) {
//                dto = httpClient.doPost(getUrl() + urlPath, paramMap, "UTF-8", (Map) null, null);
//            } else if ("GET".equals(requestMethod)) {
//                dto = httpClient.doGet(getUrl() + urlPath, paramMap, "UTF-8", (Map) null, null);
//            }
//        } catch (IOException e) {
//            log.error("请求错误，请求方式：{}，错误原因：{}", requestMethod, e.getMessage());
//            throw new BoException(ExceptionEnum.KS_REQUEST_API_FAIL);
//        }
//
//        return dto;
//    }
//
//
//    /**
//     * 快手基础的请求类
//     *
//     * @param ksPath 请求接口 和方式
//     * @param paramMap 请求参数
//     * @return 请求结果
//     */
//    public KsHttpResponseDTO dealOpenOrderCursorListResponse(KsPath ksPath, Map<String, String> paramMap) {
//        return dealOpenOrderCursorListResponse(ksPath.getUrlPath(),paramMap,ksPath.getRequestMethod());
//    }
//
//
//        /**
//         * 整理请求参数
//         *
//         * @param ksPath    请求类型
//         * @return 请求体集合
//         */
//    public Map<String, String> getParamMap(KsPath ksPath, String param,String accessToken) {
//
//        long timeSpace = System.currentTimeMillis();
//        String sign = getSign(ksPath, timeSpace, param,accessToken);
//
//
//        Map<String, String> paramMap = new HashMap<>();
//        paramMap.put("access_token", accessToken);
//        paramMap.put("appkey", getAppKey());
//        paramMap.put("method", ksPath.getMethod());
//        if (StringUtils.isNotEmpty(param)) {
//            paramMap.put("param", param);
//        }
//        paramMap.put("version", "1");
//        paramMap.put("signMethod", "MD5");
//        paramMap.put("timestamp", String.valueOf(timeSpace));
//        paramMap.put("sign", sign);
//        return paramMap;
//    }
//
//    /**
//     * 计算ks签名
//     * @param ksPath 请求枚举，包括接口等信息
//     * @param timeSpace 时间戳
//     * @param param 请求参数
//     * @return 签名结果
//     */
//    public String getSign(KsPath ksPath, long timeSpace, String param,String accessToken) {
//        String signFormat = "access_token=%s&appkey=%s&method=%s&param=%s&signMethod=MD5&timestamp=%s&version=1";
//
//        String format = String.format(signFormat, accessToken, getAppKey(), ksPath.getMethod(), param, timeSpace);
//
//        return SignUtils.sign(format, getSignSecret(), SignMethodEnum.MD5);
//    }


}
